package com.th.coupon.feign.hystrix;

import com.th.coupon.common.vo.CommonResponse;
import com.th.coupon.common.vo.CouponTemplateSdk;
import com.th.coupon.feign.TemplateClient;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;

import java.util.*;

/**
 * 调用模板微服务的服务接口熔断降级策略 熔断兜底
 * @author 涂航
 */
@Slf4j
@Component
public class TemplateClientHystrix implements TemplateClient {

    /**
     * 查找可用的优惠卷模板
     * @return
     */
    @Override
    public CommonResponse<List<CouponTemplateSdk>> findAllUsableTemplate() {
        log.error("【coupon-template-service】 findAllUsableTemplate request error !!!");
        return new CommonResponse<>(
                -1,
                "【coupon-template-service】 findAllUsableTemplate request error",
                Collections.emptyList());
    }

    /**
     * 根据优惠卷id查询对应的id与实体的映射
     * @param ids 优惠卷模板id集合
     * @return
     */
    @Override
    public CommonResponse<Map<Integer, CouponTemplateSdk>> findIds2TemplateSdk(Collection<Integer> ids) {
        log.error("【coupon-template-service】 findIds2TemplateSdk request error !!!");
        return new CommonResponse<>(
                -1,
                "【coupon-template-service】 findIds2TemplateSdk request error",
                Collections.emptyMap());
    }
}
